Socially networked television experience

ABSTRACT

In one embodiment, a system for providing social interaction opportunities for people watching television is presented. The system includes: a television data source which transmits television data streams for reception by end devices, each end device being represented by an equipment code; a plurality of end devices, including a first user&#39;s end device and a second user&#39;s end device, each end device configured to receive a television data streams, and each user represented by an identifier code; and an interactive-information server configured to: store, at the first user&#39;s behest, the identifier code of the second user; monitor which of the television data streams is being received by the first end device; monitor which of the television data streams is being received by the second end device; and notify the first user when the first end device and the second end device are receiving the same television data stream.

CROSS REFERENCE TO RELATED APPLICATION

This application is a continuation of U.S. patent application Ser. No.11/383,620, filed May 16, 2006 by Jordan Alperin and entitled, “SociallyNetworked Television Experience”, which is hereby incorporated byreference in its entirety for all purposes.

BACKGROUND OF THE INVENTION

Watching television is a common activity by many people. Some televisionshows, both popular and less well known, are socially discussedintensely by watchers for many days following their broadcast. Theseshows include soap operas, reality television shows, award shows,sporting events, and other types of programs. However, the actualwatching of the show is usually somewhat less social and involves merelywatching the show as an individual or a small group.

Currently, if a watcher wants to discuss a television show with anotherperson while the show is occurring, the watcher must communicate withthe other person by some mode initiated on their own, without knowledgeof whether or not the other person is watching the same show, or if theother person is even interested in communicated regarding the show. Thesystems and methods of the present invention provide solutions to theseand other problems.

SUMMARY OF THE INVENTION

In one embodiment, a system for providing social interactionopportunities for people watching television is provided. The system mayhave a television data source, a plurality of end devices, and aninteractive-information server. The television data source may beconfigured to transmit at least one of a plurality of television datastreams for reception by a plurality of end devices. Each end device maybe represented by an equipment code. The plurality of end devices mayinclude a first end device used by a first user and a second end deviceused by a second user. Each end device may be configured to receive atleast one of the plurality of television data streams. Each user may berepresented by an identifier code. In some embodiments, the system mayalso have a communication input device. The communication input devicemay be associated with at least one end device, and may be configured tocommunicate with at least one end device which may not be associatedwith the communication input device.

The interactive-information server may be configured to store, at thedirection of the first user, an identifier code representing the seconduser; monitor which of the plurality of television data streams is beingreceived by the first end device; monitor which of the plurality oftelevision data streams is being received by the second end device; andnotify the first user when the same television data stream is beingreceived by both the first end device and the second end device. In someembodiments, the interactive-information server may be furtherconfigured to determine the first user is using the first end device andthat the second user is using the second end device. In someembodiments, the interactive-information server may also be configuredto notify the first user if a communication input device is associatedwith the second end device.

In another embodiment, a system for providing social interactionopportunities for people watching television is provided. The system mayhave a television data source, a plurality of end devices, and aninteractive-information server. The television data source may beconfigured to transmit at least one of a plurality of television datastreams for reception by a plurality of end devices. Each end device maybe represented by an equipment code. The plurality of end devices mayinclude a first end device used by a first user and a second end deviceused by a second user. Each end device may be configured to receive atleast one of the plurality of television data streams. Each user may berepresented by an identifier code. In some embodiments, the system mayalso have a communication input device. The communication input devicemay be associated with at least one end device, and may be configured tocommunicate with at least one end device which may not be associatedwith the communication input device.

The interactive-information server may be configured to store, at thedirection of the first user, an identifier code representing the secondend user; monitor which of the plurality of television data streams isbeing received by the second end device; and notify the first user ofwhich television data stream is being received by the second end device.In some embodiments, the interactive-information server may be furtherconfigured to determine the first user is using the first end device andthat the second user is using the second end device. In someembodiments, the interactive-information server may also be configuredto notify the first user if a communication input device is associatedwith the second end device.

In another embodiment, a method for providing social interactionopportunities for people watching television is provided. The method mayhave steps for storing, at the direction of a first user of a first enddevice, an identifier code representing a second user; monitoring whichof a plurality of television data streams is being received by the firstend device; monitoring which of the plurality of television data streamsis being received by a second end device used by the second user; andnotifying the first user of which television data stream is beingreceived by the second end device. In some embodiments, the method mayalso have a step for notifying the first user when the same televisiondata stream is being received by both the first end device and thesecond end device. In some embodiments, the method may also have a stepfor notifying the first user if a communication input device isassociated with the second end device.

BRIEF DESCRIPTION OF THE DRAWINGS

The present disclosure is described in conjunction with the appendedfigures:

FIG. 1 is a block diagram of one system which provides socialinteraction opportunities for people watching television, havingmultiple televisions and end devices, as well as a television datasource and an interactive-information server which are not in directcommunication with each other;

FIG. 2 is a portion of a sample database of information that might bestored by an interactive-information server;

FIG. 3 is a block diagram of a system similar to that in FIG. 1, exceptthe television data source and the interactive-information server are indirect communication;

FIG. 4 is a block diagram of a system similar to that in FIG. 3, exceptthe television data source and the interactive-information server aresubsystems of a larger system;

FIG. 5 is a block diagram of a system similar to that in FIG. 4, exceptone of the televisions and end devices has been replace with a TVoIPready television;

FIG. 6 is a block diagram of a system similar to that in FIG. 5, excepteach end device has an associated communication input device;

FIG. 7 is a block diagram of an exemplary computer system capable ofbeing used in at least some portion of the systems of the presentinvention, or implementing at least some portion of the methods of thepresent invention;

FIG. 8 is a diagram of a television data stream being transmitted by atelevision data source to an end device and a parallel stream ofnotification data being transmitted from an interactive-informationserver to the end device;

FIG. 9 is a diagram of a method of providing social interactionopportunities for people watching television which allows users to usecommunication input devices and notifies a user when the same televisiondata stream is being received by another end device, what televisiondata streams are being received by other end devices, and whether or nota particular end device has a communication input device associated withit;

FIG. 10 is a diagram of a method, similar to the method in FIG. 9, whichdoes not notify a user of which television data streams are beingreceived by other end devices which are not receiving the sametelevision data stream;

FIG. 11 is a diagram of a method, similar to the method in FIG. 9, whichdoes not notify a user when the same television data stream is beingreceived by another end device;

FIG. 12 is a diagram of a method, similar to the method in FIG. 9, whichdoes not notify a user which television data streams are being receivedby another end device and which does not allow users to usecommunication input devices; and

FIG. 13 is a flow diagram of a process that might be used by theinteractive-information server, or other portion of the system, todetermine when to notify a user than another end device is receiving thesame television stream, or to determine when to notify the user of whichtelevision data streams are being receives by other end devices.

In the appended figures, similar components and/or features may have thesame reference label. Further, various components and/or features of thesame type may be distinguished by following the reference label by aletter that distinguishes among the similar components and/or features.If only the first reference label is used in the specification, thedescription is applicable to any one of the similar components and/orfeatures having the same first reference label irrespective of theletter suffix.

DETAILED DESCRIPTION OF THE INVENTION

The ensuing description provides preferred exemplary embodiments only,and is not intended to limit the scope, applicability or configurationof the disclosure. Rather, the ensuing description of the preferredexemplary embodiments will provide those skilled in the art with anenabling description for implementing a preferred exemplary embodiment.It is understood that various changes may be made in the function andarrangement of elements without departing from the spirit and scope ofthe invention as set forth in the appended claims.

Specific details are given in the following description to provide athorough understanding of the embodiments. However, it will beunderstood by one of ordinary skill in the art that the embodiments maybe practiced without these specific details. For example, circuits,systems, networks, processes, and other components may be shown in blockdiagram form in order not to obscure the embodiments in unnecessarydetail. In other instances, well-known circuits, processes, algorithms,structures, and techniques may be shown without unnecessary detail inorder to avoid obscuring the embodiments.

Also, it is noted that individual embodiments may be described as aprocess which is depicted as a flowchart, a flow diagram, a data flowdiagram, a structure diagram, or a block diagram. Although a flowchartmay describe the operations as a sequential process, many of theoperations can be performed in parallel or concurrently. In addition,the order of the operations may be re-arranged. A process is terminatedwhen its operations are completed, but could have additional steps notincluded in a figure. A process may correspond to a method, a function,a procedure, a subroutine, a subprogram, etc. When a process correspondsto a function, its termination corresponds to a return of the functionto the calling function or the main function.

The term “machine-readable medium” includes, but is not limited toportable or fixed storage devices, optical storage devices, wirelesschannels and various other mediums capable of storing, containing orcarrying instructions and/or data. A code segment or machine-executableinstructions may represent a procedure, a function, a subprogram, aprogram, a routine, a subroutine, a module, a software package, a class,or any combination of instructions, data structures, or programstatements. A code segment may be coupled to another code segment or ahardware circuit by passing and/or receiving information, data,arguments, parameters, or memory contents. Information, arguments,parameters, data, etc. may be passed, forwarded, or transmitted via anysuitable means including memory sharing, message passing, token passing,network transmission, etc.

Furthermore, embodiments may be implemented by hardware, software,firmware, middleware, microcode, hardware description languages, or anycombination thereof. When implemented in software, firmware, middlewareor microcode, the program code or code segments to perform the necessarytasks may be stored in a machine readable medium. A processor orprocessors may perform the necessary tasks.

In one embodiment, a system for providing social interactionopportunities for people watching television is provided. The system mayhave a television data source (“TDS”), a plurality of end devices, andan interactive-information server (“IIS”). Some embodiments may alsohave at least one communication input device.

The TDS may be configured to transmit at least one of a plurality oftelevision data streams for reception by the plurality of end devices,wherein each end device is represented by an equipment code. The TDS maybe a computer configured to convert digital or analog television signalsinto television data streams. For instance, a computer may receivetraditional television signals from a source such as broadcast, cable orsatellite and convert such signals into television data streams. In someembodiments, each traditional television channel will be converted intoa single television data stream. In some embodiments, the TDS may be aTelevision over Internet Protocol (“TVoIP”) server. Transmission of thetelevision data streams may possibly occur over the internet, anintranet, and/or another medium capable of carrying transmitted data toend devices.

The end devices, including a first end device used by a first user and asecond end device used by a second user, may each be configured toreceive at least one of the plurality of television data streams. Eachuser may be represented by an identifier code and the end devices maybe, for example, a television set-top box configured to receive at leastone television data stream and convert the data stream into a signalthat may be received and displayed by a television. The televisionset-top box may convert a television data stream into separate audio andvideo signals, where the audio signals, once converted, may be mono,stereo, or multi-channel signals. The video signals, once converted, maybe a composite, s-video, or component signal. Some end devices may beTVoIP ready televisions that may or may not conduct similar conversionoperations to display the television data streams. Other possible enddevices include personal computers and portable electronic devices. Eachend device may be represented by an equipment code, and the equipmentcode may be an alpha-numeric string. The alpha-numeric string may be aMedia Access Control address (“MAC address”) or an Internet Protocoladdress (“IP address”).

The IIS may be configured to store, at the direction of the first user,an identifier code representing the second user; monitor which of theplurality of television data streams is being received by the first enddevice; monitor which of the plurality of television data streams isbeing received by the second end device used by the second userrepresented by the identifier code; notify the first user whichtelevision data stream is being received by the second end device; andnotify the first user when the same television data stream is beingreceived by both the first end device and the second end device. The IISmay be a computer in communication with the TDS and/or a computer incommunication with the plurality of end devices. The identifier code maybe alpha-numeric string, and in some embodiments may be a username,e-mail address, handle, or alias. Notifying the first user when the sametelevision data stream is being received by both the first end deviceand the second end device may involve transmitting notification data forreception by the second end device. In some embodiments the IIS mayfurther be configured to determine that the first end device is beingused by the first user, and that the second end device is being used bythe second user.

In some embodiments, a communication input device may be associated withat least one end device and may be configure to communicate with atleast one end device which is not associated with the communicationinput device. In some embodiments, the communication input device may beintegral with the end device it is associated with. This may especiallybe the case in embodiments where the end device is a personal computeror an entertainment console. The IIS may be configured, in embodimentsemploying communication input devices, to notify the first user if acommunication input device is associated with the second end device.

In another embodiment, a method for providing social interactionopportunities for people watching television is provided. The method mayhave steps for storing, at the direction of a first user of a first enddevice, an identifier code representing a second user; monitoring whichof a plurality of television data streams is being received by the firstend device; monitoring which of the plurality of television data streamsis being received by a second end device used by the second user; andnotifying the first user of which television data stream is beingreceived by the second end device. In some embodiments, the method mayalso have a step for notifying the first user when the same televisiondata stream is being received by both the first end device and thesecond end device. In some embodiments, the method may also have a stepfor notifying the first user if a communication input device isassociated with the second end device.

Turning now to FIG. 1, a block diagram is shown of one system 100 whichprovides social interaction opportunities for people watchingtelevision. The system includes multiple televisions 110, 120, 130, eachused by different users. Each of these televisions is respectivelyassociated with multiple end devices 115, 125, 135, which may be set-topboxes. Each of the end devices 115, 125, 135 are in communication withthe Internet 140. Through the Internet 140, the end devices 115, 125,135 are in communication with both a TDS 150 and an IIS 160. Both theTDS 150 and the IIS 160 may have an input/output (“I/O”) port 152, 162,a processor 154, 164 and a data store 156, 166.

In this embodiment, methods and systems of the invention may be used toprovide social interaction opportunities for people watching television.For example, each user may be receiving a different television datastream from the TDS 150. The TDS 150 may store television data on itsdata store 156, and transmit the television data streams from its I/Oport 152, over the Internet 140, for reception by the end device 115,125, 135. Each of the end devices 115, 125, 135 may receive thedifferent television data stream and convert it into a video signal andaudio signal. The audio and video signals may then be transmitted fromthe end devices 115, 125, 135 to each respective television 110, 120,130 for perception by users of the televisions 110, 120, 130.

In one example, a first user may be using the first end device 115 towatch television 110. A second user may be using the first end device125 to watch television 120. The IIS 160, may, at the direction of thefirst user, store an identifier code representing the second user. Thismay occur when the first user logs into a web-site or other userinterface which may interact with the IIS 160. Such an interaction mightoccur through the use of a personal computer or an interface accessedthrough an end device and/or a television. It may also occur through theuse of a portable electronic device such as a mobile phone, personaldata assistant, BlackBerry™ or GoodLink™ device.

Once the first user begins communication with the IIS 160, the user maysubmit identifier codes of other possible users of end devices. Theseother users may be users with which the first user may desire tocommunicate with regarding television data streams watched by the otherusers. Once identifier codes have been submitted by the first user, theymay be stored by the IIS 160 in the data store 166 as being related tothe first user. The data store 166 will thus possibly contain a listingof users, each possibly identified by an identifier code, and each alsohaving a list of identifier codes associated therewith that representother users. For the purpose of an example, in one embodiment the firstuser may store identifier codes for a second user using end device 125and a third user using end device 135.

IIS 160 may monitor which television data streams are being transmittedby TDS 150, and being received by end devices 115, 125, 135.Alternatively, IIS 160 may monitor end devices 115, 125, 135 todetermine which television data streams are being received by enddevices 115, 125, 135. IIS 160 may continually update data store 166with data representing what different television data streams are beingreceived by end devices 115, 125, 135. The IIS 160 may determine thatthe which users are using which end devices, and temporarily store theidentifier code representing the user which is using end device 115,125, 135. In this way, the IIS 160 may have stored at data store 166 alist of identifier codes representing users which are using end devices.For each user using an end device the data store 166 may also contain alist of equipment codes identifying the end device being used by theusers; a list of related identifier codes for each user; and anotherlist of equipment codes, wherein each equipment code in this listidentifies the end device used by the related users.

FIG. 2 is an example of a portion of data 200 which might be stored atIIS 160 in some embodiments. In column 210 the identifier coderepresenting a user is stored. In column 220 the equipment coderepresenting an end device used by the user is stored. In thisparticular embodiment the equipment code is shown as the end device's IPaddress, though other identifiers are possible. Note that in relation tosome users, the equipment code field is empty. In some embodiments thismay indicate that the user is currently not using an end device. Incolumn 230 a code representing what type of communication input devicethe user has associated with the end device they are using. Note that inrelation to some users, the communication input device code field isempty. In some embodiments this may indicate that no communication inputdevice is associated with the end device. In reference to FIG. 2, wc365′may represent a certain model web-camera. ‘voip12’ may represent acertain type of Voice over Internet Protocol phone. ‘pc’ may representan IBM™ clone personal computer. ‘mac’ may represent a Macintosh™personal computer. In column 240 a communication input device code isshown. In this particular embodiment the communication input device codeis shown as the communication input device's IP address, though otheridentifiers are possible.

In column 250 the television data stream which is being received by theend device being used by the user is stored. This information may beobtained by the IIS 160 through monitoring and/or querying the TDS 150.Note that in relation to some users, the communication input device codefield is empty. In some embodiments this may indicate, as above, thatthe user is currently not using an end device. In this particularembodiment the television data stream is identified by an alpha-numericcode. Other types of identifiers are possible within the scope of theinvention.

In column 260, identifier codes of related users are listed. Theseidentifier codes may be related to the user represented by theidentifier code in column 210 because the user directed the IIS 160 tostore identifier codes for the related users. These related users may bepeople for whom the user wishes to know which television data streamthey are watching, or when they are watching the same television datastream as the user. In column 270, equipment codes of the end devicebeing used by the related users may be stored. Note that in relation tosome related users, this field may be empty because the user is notcurrently using an end device to receive a television data stream. Insome embodiments, fewer or more types of data columns may be present, orthe data may be stored in some other format, possibly a database formatknown in the art. For instance, in some embodiments, column 270 may notbe present as the data contained therein is merely repetitive of datastored elsewhere in the data store. Namely, the related equipment codein column 270 can be found in column 220 in reference to the primaryuser whose identifier code is found in column 210.

In further reference to FIG. 2, certain information has been bolded forexplanatory reasons. Note that one of the related identifier codes foridentifier code ‘0052’ is ‘0058.’ In some embodiments of the invention,‘0058’ may be stored at the direction of the ‘0052’ user. ‘0058’ mayrepresent a user for whom the ‘0052’ user wishes to know whichtelevision data stream they are watching, or when they are watching thesame television data stream as the ‘0052’ user. In embodiments where thesystem or method only informs a user when another specified user isreceiving the same television data stream, the system or method may nottake any action in the state represented by FIG. 2. In otherembodiments, where the system or method allows a user to determine whattelevision data stream another user is receiving, the ‘0052’ user may beable to interact with an end device to receive a video and/or audiorepresentation of which television data stream is being received by‘0052’'s related users.

In the example shown by FIG. 2, such a system or method would allow the‘0052’ user to possibly call up a list of the television data streambeing received by end devices being used by the ‘0144’ user, the ‘5280’user, the ‘0069’ user, the ‘1234’ user, and the ‘0058’ user. In thespecific case of the ‘0058’ user, the end device being used by the‘0052’ user may display a notification that the ‘0058’ user is watchingthe ‘RMRCABC109’ television data stream. Some embodiments may conduct alookup of a name associated with the related user's identifier code anddisplay the name rather than the identifier code. For instance, ‘SeymoreB. McCluckey’ may be displayed rather than ‘0058’ if that is the name ofthe user represented by ‘0058.’ Some embodiments may also conduct alookup of a name associated with the television data stream, and displaythe name rather than the alpha-numeric representation of the televisiondata stream. For instance, ‘ABC™’ may be displayed rather than‘RMRCABC109’ if that is the name of the traditional television stationconverted into television data stream ‘RMRCABC109.’ Furthermore, in someembodiments, another lookup may be conducted where the content of thetelevision data stream is determined so a description of such may bedisplayed. In some embodiments this may be the specific televisionprogram that is being transmitted in the television data stream. So insome embodiments, for example, the following might be displayed whenuser ‘0052’ requests information on what user ‘0058’ is watching:“Seymore B. McCluckey—ABC—National Nightly News.” The lookups describedabove may occur at a variety of systems or some combination thereof. Forexample, the IIS 160 may conduct user name lookups, but the IIS 160 maycommunicate with the TDS 150 to conduct a television data stream nameand program information lookup.

FIG. 3 is a block diagram of a system 300 similar to that in FIG. 1,except the TDS 150 and the IIS 160 are in direct communication. Theembodiment may be advantageous when the IIS 160 and the TDS 150 are inclose physical proximity to each other or are operated by the sameentity. In such a configuration, the IIS 160 will communicate with theTDS 150 by use of a trunk connection or other connection to monitorwhich television data stream is being transmitted to each of theplurality of users so monitored.

FIG. 4 is a block diagram of a system 400 similar to that in FIG. 3,except the television data source and the interactive-information serverare subsystems of a larger system. For the same reasons described aboveor otherwise, it may be advantageous in some embodiments to combine theTDS 150 and IIS 160 as subsystems of a larger system as shown in FIG. 4.In such a configuration, the TDS 150 and IIS 160 may share the sameinput and output port 310.

FIG. 5 is a block diagram of a system 500 similar to that in FIG. 4,except end device 135 and television 130 have been replaced by a fourthend device 145, here a TVoIP ready television. In this embodiment, theTVoIP ready television may incorporate the functionality of the enddevice 135 and the television 130 within one physical unit.

FIG. 6 is a block diagram of a system 600 similar to that in FIG. 5,except each end device has an associated communication input device. Acommunication input device 610 is shown in communication with end device115. In FIG. 6, the communication input device 610 is shown as aweb-camera. In some embodiments, the communication input device 610 maybe in direct communication with the end device 115, and facilitatecommunication with another end device or communication input deviceassociated with a different end device.

A communication input device 620 is shown associated with, but not indirect communication with, end device 125. In FIG. 6, the communicationinput device 620 is shown as a laptop or notebook computer. In someembodiments, the communication input device 620 may be more directly incommunication with the Internet than with the end device 125, andfacilitate communication with another end device or communication inputdevice associated with a different end device.

A communication input device 620 is shown associated with, but not indirect communication with, end device 410. In FIG. 6, the communicationinput device 630 is shown as a Voice over Internet Protocol telephone.As shown in this embodiment, the communication input device 630 may bein direct communication with the internet. In other embodiments thecommunication input device 630 may be more directly in communicationwith the Internet than with the end device 135, and facilitatecommunication with another end device or communication input deviceassociated with a different end device.

FIG. 7 is a block diagram illustrating an exemplary computer system 700in which at least portions of embodiments of the present invention maybe implemented. This example illustrates a computer system 700 such asmay be used, in whole, in part, or with various modifications, toprovide the functions of the TDS 150, IIS 160, End Devices 115, 125,135, 410, communication input devices 610, 620, 630 and/or othercomponents of the invention such as those discussed above. For example,various functions of the IIS 150 may be controlled by the computersystem 700 including, merely by way of example, monitoring televisiondata streams being transmitted and/or notifying users of what televisiondata stream another user is receiving.

The computer system 700 is shown comprising hardware elements that maybe electrically coupled via a bus 790. The hardware elements may includeone or more central processing units 710, one or more input devices 720(e.g., a mouse, a keyboard, etc.), and one or more output devices 730(e.g., a display device, a printer, etc.). The computer system 700 mayalso include one or more storage device 740. By way of example, storagedevice(s) 740 may be disk drives, optical storage devices, solid-statestorage device such as a random access memory (“RAM”) and/or a read-onlymemory (“ROM”), which can be programmable, flash-updateable and/or thelike.

The computer system 700 may additionally include a computer-readablestorage media reader 750, a communications system 760 (e.g., a modem, anetwork card (wireless or wired), an infra-red communication device, aBluetooth™ device, etc.), and working memory 780, which may include RAMand ROM devices as described above. In some embodiments, the computersystem 700 may also include a processing acceleration unit 770, whichcan include a digital signal processor, a special-purpose processorand/or the like.

The computer-readable storage media reader 750 can further be connectedto a computer-readable storage medium, together (and, optionally, incombination with storage device(s) 740) comprehensively representingremote, local, fixed, and/or removable storage devices plus storagemedia for temporarily and/or more permanently containingcomputer-readable information. The communications system 760 may permitdata to be exchanged with a network, system, computer, and/or othercomponent described above.

The computer system 700 may also comprise software elements, shown asbeing currently located within a working memory 780, including anoperating system 784 and/or other code 788. It should be appreciatedthat alternate embodiments of a computer system 700 may have numerousvariations from that described above. For example, customized hardwaremight also be used and/or particular elements might be implemented inhardware, software (including portable software, such as applets), orboth. Furthermore, connection to other computing devices such as networkinput/output and data acquisition devices may also occur.

Software of computer system 700 may include code 788 for implementingany or all of the function of the various elements of the architectureas described herein. For example, software, stored on and/or executed bya computer system such as system 700, can provide the functions of theTDS 150, IIS 160, End Devices 115, 125, 135, 410, communication inputdevices 610, 620, 630 and/or other components of the invention such asthose discussed above. Methods implementable by software on some ofthese components will be discussed below in more detail.

FIG. 8 is a diagram 800 of a television data stream 810 beingtransmitted by a TDS 150 to an end device 820, an outward stream of data830 being transmitted from end device 820 to an IIS 160, and an inwardstream of data 840 being transmitted from IIS 160 to end device 820.This embodiment also shows a television data stream control instruction850 being transmitted by end device 820 to TDS 150.

Television data stream 810 may consist of multiple consecutive packetsof data, for example, packets 1 through 8 as shown on FIG. 8. Eachpacket may contain both audio and video data. End device 820 may converttelevision data stream 820 into audio and video signals for transmissionto another device such as a television. In other embodiments, the enddevice may be a personal computer or TVoIP ready television, and mayitself more directly reproduce the video and audio represented by thetelevision data stream 810.

Television Data Stream Control Instruction 850 may be an intermittentsignal sent from end device 820 to TDS 150 when a user initiates achange in television data streams that the user wishes to receive. Forexample, a user may push a button a remote control device associatedwith end device 820 to initiate a change in which television data stream810 is being sent to end device 820. The end device may be configured toreceive the signal from the remote control and send a television datastream control instruction 850 to TDS 150. TDS 150 may then change whichtelevision data stream 810 is being transmitted to end device 820.

In embodiments where IIS 160 queries end devices to determine whentelevision data stream 810 is being received by the end devices, outwardstream of data 830 may be data requested by IIS 160 which representswhat television data stream 810 end device 820 is receiving. Inembodiments where IIS 160 communicates more directly with TDS 150 todetermine which television data stream 810 a particular end device 820is receiving, outward stream of data 830 may be communicationinformation transmitted by a communication input device associated withend device 820. Outward stream of data 830 may also be instructions fromend device 820 to IIS 160 to transmit information representing whattelevision data streams are being received by other users. Incomingstream of data 840 may be representative of such information, or mayalso be notification data regarding when a specified user of another enddevice is receiving the same television data stream 810 as the user ofend device 820.

FIG. 9 is a diagram of a method 900 of providing social interactionopportunities for people watching television which allows users to usecommunication input devices and notifies a user when the same televisiondata stream is being received by another end device; what televisiondata streams are being received by other end devices; whether or not aparticular end device has a communication input device associated withit; and also allows users of end devices to communicate with each other.At block 904, a user accesses IIS 160. The use then submits userverification information such as a username and password at block 908.At block 912, IIS 160 receives the user verification information. IIS160 compares the user verification information to information stored ina data store at or in communication with IIS 160 at block 916. Thestored information may be information collected from the user duringinitiation of services with a service provider. The user may be able tomodify the user verification information in some embodiments topersonalize the verification procedure.

At block 920, the user submits an identifier code of another user whomthe user wishes to know when they are receiving the same television datastream and/or what television data stream they are receiving. IIS 160receives the identifier code at block 924 and stores the identifier codeat block 928.

At block 932, the user may access IIS 160. This may occur automaticallywhen the user of accesses TDS 150 with an end device and instructs TDS150 to transmit a television data stream. In some embodiments, the usermay be required to log into the end device, possibly using an inputmechanism which instructs IIS 160 that the specific user is using theend device. In other embodiments, the IIS 160 may determine that aspecific user is using the end device because of what television datastream the end device is receiving and the habitual television datastream receiving tendencies of the user in the past. In someembodiments, the end device may be associated with only one user (asingle person household), and thus when an end device is in use, IIS 160may know that the end device is being used by that user.

At block 936, IIS 160 may monitor which television data stream is beingreceived by the user and the associated users represented by theidentifier codes transmitted by the user at block 920. IIS 160 maynotify the user when an associated user's end device is receiving thesame television data stream at block 940. In some embodiments, at block944, in response to a user requesting such information, IIS 160 maytransmit information representative of which television data streams arebeing received by associated end devices. Possibly, IIS 160 may transmitthis information whenever a user first initiates use of an end device.The end device may then reproduce this information as video or audioinformation receivable by the user from the end device or a deviceassociated therewith. At block 948, some embodiments of the inventionwill notify the user if a communication input device is associated withan associated end device.

At block 952, if the user has a communication input device associatedwith the end device being used, the user may input communicationinformation for transmission to another end device or communicationinput device associated with another end device at block 956. The otherend device or communication input device may receive the communicationinformation at block 960, and reproduce such information using video oraudio at block 960. The user using the other end device or communicationinput device may then respond in kind or otherwise at blocks 968, 972,976, 980. This process may repeat itself as the users communicate backand forth until such time as either one or both of the users close thecommunication link at block 984.

FIG. 10 is a diagram of a method 1000, similar to the method in FIG. 9,which does not notify a user of which television data streams are beingreceived by other end devices which are not receiving the sametelevision data stream.

FIG. 11 is a diagram of a method 1100, similar to the method in FIG. 9,which does not notify a user when the same television data stream isbeing received by another end device.

FIG. 12 is a diagram of a method 1200, similar to the method in FIG. 9,which does not notify a user which television data streams arc beingreceived by another end device and which does not allow users to usecommunication input devices.

FIG. 13 is a flow diagram of a process 1300 that might be used by theinteractive-information server, or other portion of the system, todetermine when to notify a user than another end device is receiving thesame television stream, or to determine when to notify the user of whichtelevision data streams are being receives by other end devices. Atblock 1310, an IIS 160 may update its data store which reflects whichusers are using which end devices and what television data streams arebeing received by each end device. This may occur because a TDS 150transmits information to IIS 160 whenever this information changes, orit may occur because IIS 160 queries either TDS 150 or end devices. Atblock 1320, IIS 160 determined whether for each user there is anassociated user who's end device is receiving the same television datastream as the user. If yes, at block 1330, IIS 160 may notify the userthat the same television data stream is being received by another user.If no, or after notifying the user that the associated user's end deviceis receiving the same television data stream, IIS 160 will determine, atblock 1340, whether or not a user has requested a list of whattelevision data streams associated user's end devices are receiving. Insome embodiments the user may merely request information regarding whata particular user's end device is receiving. If a user has requestedsuch information, at block 1350 IIS 160 will notify the user of whichtelevision data stream is being received by the associated user's enddevice. If no request has been made, or after such notification has beenmade, at block 1360 a time delay may occur at IIS 160 before the process1300 repeats itself. In some embodiments, a time delay may not occur,for example in those embodiments where IIS 160 is not querying othersystems, but rather receives information as it changes elsewhere in theinvention. In such embodiments, IIS 160 may conduct the describedprocess whenever updated information is received.

The invention has now been described in detail for the purposes ofclarity and understanding. However, it will be appreciated that certainchanges and modifications may be practiced within the scope of theappended claims.

What is claimed is:
 1. A system for providing social interactionopportunities for people watching television, the system comprising: atelevision data source configured to transmit at least one of aplurality of television data streams for reception by a plurality of enddevices, wherein each end device is represented by an equipment code;the plurality of end devices, including a first end device used by afirst user and a second end device used by a second user, wherein eachend device is configured to receive at least one of the plurality oftelevision data streams, and each user is represented by an identifiercode; and an interactive-information server configured to: store, at thedirection of the first user, an identifier code representing the seconduser; monitor which of the plurality of television data streams is beingreceived by the first end device, by communicating with the televisiondata source; monitor which of the plurality of television data streamsis being received by the second end device, by communicating with thetelevision data source; notify the first user when the same televisiondata stream is being received by both the first end device and thesecond end device, wherein notifying the first user comprises:transmitting notification data regarding when the second user of thesecond end device is receiving the same television data stream as thefirst user of the first end device; and displaying a notification on thefirst end device that the second end device is receiving the sametelevision data stream.
 2. The system for providing social interactionopportunities for people watching television of claim 1, wherein theinteractive-information server is further configured to: receive, fromthe first user, at least one identifier code associated with anotheruser; and store the identifier code in a memory module.
 3. The systemfor providing social interaction opportunities for people watchingtelevision of claim 2, wherein the interactive-information server isfurther configured to notify the second user when the same televisionstream is being received by both the first end device and the second enddevice.
 4. The system for providing social interaction opportunities forpeople watching television of claim 3, wherein theinteractive-information server is further configured to: receive, in thefirst end device, communication information from the first user directedto the second user via the first communication input device; transmitthe communication information from the first end device to the secondend device; and reproduce the communication information on a displayassociated with the second device.
 5. The system for providing socialinteraction opportunities for people watching television of claim 4,wherein the interactive-information server is further configured to:receive, in the second end device, communication information from thesecond user directed to the first user via the second communicationinput device; transmit the communication information from the second enddevice to the first end device; and reproduce the communicationinformation on a display associated with the first end device.
 6. Thesystem for providing social interaction opportunities for peoplewatching television of claim 1, wherein the identifier code is analpha-numeric string.
 7. The system for providing social interactionopportunities for people watching television of claim 1, wherein theequipment code is an alpha-numeric string.
 8. The system for providingsocial interaction opportunities for people watching television of claim1, wherein the interactive-information server is selected from a groupconsisting of: a computer in communication with the television datasource; and a computer in communication with the plurality of enddevices.
 9. The system for providing social interaction opportunitiesfor people watching television of claim 1, wherein theinteractive-information server is further configured to: determine thefirst end device is being used by the first user; and determine thesecond end device is being used by the second user.
 10. The system forproviding social interaction opportunities for people watchingtelevision of claim 1, wherein the interactive-information server isfurther configured to store information about the type of thecommunication input device associated with the second end device. 11.The system for providing social interaction opportunities for peoplewatching television of claim 1, wherein the communication input deviceis configured to communicate with at least one end device which is notassociated with the communication input device.
 12. A system forproviding social interaction opportunities for people watchingtelevision, the system comprising: a television data source configuredto transmit at least one of a plurality of television data streams forreception by a plurality of end devices, wherein each end device isrepresented by an equipment code; the plurality of end devices,including a first end device used by a first user and a second enddevice used by a second user, wherein each end device is configured toreceive at least one of the plurality of television data streams, andeach user is represented by an identifier code; and aninteractive-information server configured to: store, at the direction ofthe first user, an identifier code representing the second end user;monitor which of the plurality of television data streams is beingreceived by the second end device, by communicating with the televisiondata source; notify the first user when the same television data streamis being received by both the first end device and the second enddevice, wherein notifying the first user comprises: transmittingnotification data regarding when the second user of the second enddevice is receiving the same television data stream as the first user ofthe first end device; and displaying a notification on the first enddevice that the second end device is receiving the same television datastream.
 13. The system for providing social interaction opportunitiesfor people watching television of claim 12, wherein theinteractive-information server is further configured to: receive, fromthe first user, at least one identifier code associated with anotheruser; and store the identifier code in a memory module.
 14. The systemfor providing social interaction opportunities for people watchingtelevision of claim 13, wherein the interactive-information server isfurther configured to notify the second user when the same televisionstream is being received by both the first end device and the second enddevice.
 15. The system for providing social interaction opportunitiesfor people watching television of claim 12, wherein theinteractive-information server is further configured to storeinformation about the type of the communication input device associatedwith the second end device.
 16. The system for providing socialinteraction opportunities for people watching television of claim 12,wherein the communication input device is configured to communicate withat least one end device which is not associated with the communicationinput device.
 17. A computer implemented method of providing socialinteraction opportunities for people watching television, wherein themethod comprises: storing, at the direction of a first user of a firstend device, an identifier code representing a second user; monitoringwhich of a plurality of television data streams is being received by thefirst end device, by communicating with the television data source;monitoring which of the plurality of television data streams is beingreceived by a second end device used by the second user, bycommunicating with the television data source; notifying the first userwhen the same television data stream is being received by both the firstend device and the second end device, wherein notifying the first usercomprises: transmitting notification data regarding when the second userof the second end device is receiving the same television data stream asthe first user of the first end device; and displaying a notification onthe first end device that the second end device is receiving the sametelevision data stream.
 18. The computer implemented method of providingsocial interaction opportunities for people watching television of claim17, wherein the method further comprises the first user transmittingcommunication information to the communication input device associatedwith the second end device via the first communication input device.